home *** CD-ROM | disk | FTP | other *** search
- /* CEClassEditor.h
- *
- * This object controls the data of a beaker (molecules, cameras, groups etc.)
- * It is the main document of BeakerBoy and controls everything from loading to
- * setting up the browser which does most of the other work.
- *
- * Usage: ....
- *
- * Written by: Thomas Engel
- * Created: 23.10.1993 (Copyleft)
- * Last modified: 12.11.1994
- */
-
- typedef enum
- {
- CE_FILETYPE_NONE = 0,
- CE_FILETYPE_ASCII,
- CE_FILETYPE_RTF,
- CE_FILETYPE_RTFD
- } CE_FILETYPES;
-
- typedef enum
- {
- CE_BrowseClassInfo = 1,
- CE_BrowseInstanceVars,
- CE_BrowseMethods,
- CE_BrowseInstanceMethods,
- CE_BrowseClassMethods,
- CE_BrowseMethodsByCategory,
- CE_BrowseDependencies,
- CE_BrowsePlainC
- } CE_PrimaryBrowsing;
-
- typedef enum
- {
- CE_BrowseReferences = 1,
- CE_BrowseHistory,
- CE_BrowseBugs
- } CE_SecondaryBrowsing;
-
-
- #import <appkit/appkit.h>
- #import <CEAppManager.h>
-
- @interface CEClassEditor:Object
- {
- id window;
- id cheatWindow;
-
- id browser;
- id modePopup;
- id selection;
-
- id secondaryBrowser;
- id secondaryModePopup;
- id secondarySelection;
-
- id classHierarchyField;
-
- id selectorNameField;
- id methodNameField;
- id docuTextView;
- id sourceTextView;
-
- id filename;
- id methodList;
-
- id headerFile;
- id sourceFile;
- id docuFile;
- int headerStyle;
- int sourceStyle;
- int docuStyle;
-
- @private
-
- BOOL _updatingTextViews;
- BOOL _changedTexts;
- id _changedWindow;
- int _docuOriginStart;
- int _docuOriginEnd;
- int _sourceOriginStart;
- int _sourceOriginEnd;
-
- id _tempPb;
-
- id _docuPath;
- id _headerPath;
- id _sourcePath;
- }
-
- + initialize;
-
- - init;
- - initFromFile:(const char *)fileName;
- - free;
-
- - window;
-
- - reparseMethods:sender;
- - save:sender;
- - close:sender;
- - undo:sender;
-
- - resolveLock:sender;
-
- // Keeping windows in sync...
-
- - switchToNewDisplayMode:sender;
- - selectNewMethodFromText:sender;
- - selectNewMethod:sender;
- - selectTrueLine:(int)line inSource:(BOOL)aFlag;
- - _setIsUpdatingTextViews:(BOOL)flag;
- - _showSourceForMethod:aMethod;
- - _silentlySyncWindows;
- - _syncWindows;
-
- // Working with documentation...
-
- - _showDocuForMethod:aMethod;
-
- // Controlling the windows
-
- - showCheatWindow:sender;
- - showAllFiles:sender;
- - showDocumentationOnly:sender;
- - showInterfaceOnly:sender;
- - showImplementationOnly:sender;
- - _resizeCheatWindowFor:mainView andHide:secondView :thirdView;
-
- // Delegation done by the Browser
-
- - (int)browser:sender fillMatrix:matrix inColumn:(int)column;
- - _checkSelectionInBrowser:aBrowser;
-
- - (int)fillClassInfoIntoMatrix:matrix;
- - (int)fillInstanceVarsIntoMatrix:matrix;
- - (int)fillMethodsIntoMatrix:matrix;
- - (int)fillInstanceMethodsIntoMatrix:matrix;
- - (int)fillClassMethodsIntoMatrix:matrix;
- - (int)fillMethodsByCategoryIntoMatrix:matrix;
- - (int)fillDependenciesIntoMatrix:matrix;
- - (int)fillPlainCIntoMatrix:matrix;
-
- - _fillCell:theCell forMethod:aMethod;
-
- - (int)fillReferencesIntoMatrix:matrix accordingTo:theSelection;
- - (int)fillHistoryIntoMatrix:matrix accordingTo:theSelection;
- - (int)fillBugsIntoMatrix:matrix accordingTo:theSelection;
-
- // Delegation done by the Texts
-
- - textDidChange:sender;
- - textDidGetKeys:sender isEmpty:(BOOL)flag;
- - _highlightPrevious:(char *)aString inView:aText;
- - textShouldPerformCompletion:sender;
-
- // Delegation done by the Window
-
- - windowDidBecomeKey:sender;
- - windowWillClose:sender;
-
- @end
-
- /*
- * History: 13.01.95 Buh
- *
- *
- * Bugs: - ...
- */